package com.cskaoyan.service;

import com.cskaoyan.bean.bo.*;
import com.cskaoyan.bean.pojo.*;
import com.cskaoyan.bean.vo.*;
import com.cskaoyan.bean.pojo.*;
import com.cskaoyan.bean.vo.*;
import com.cskaoyan.bean.vo.grouponvo.CreatIssueVO;
import com.cskaoyan.bean.vo.grouponvo.KeywordListVO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface MallService {
    /**
     * @author: lds
     * @title: queryRegion
     * @description: 查询省市县（区）
     * @param: []
     * @return: java.util.List<com.cskaoyan.bean.vo.MallRegionListVO>
     */
    List<MallRegionListVO> queryRegion();



    /**
     * @author: hdf
     * @description: 品牌制造商模块 brand
     */
    MallBrandVO selectByExample(BrandListBO brandListBO);

    MallBrandCreateVO insertSelective(BrandAddBO brandAddBO);

    Brand updateByExample(Brand brand);

    int updateByExampleSelective(Brand record);


    /**
     * @author: hdf
     * @description: 商品类目模块 category
     */
    List<CategoryListVO> selectCategory();

    List<CategoryL1VO> selectL1Category();

    CategoryAddVO createCategory(CategoryAddBO categoryAddBO);

    String updateL1Category(CategoryL1UpdateBO categoryL1UpdateBO);

    void deleteCategory(CategoryL1UpdateBO categoryL1UpdateBO);



    IssueListVO issueList(Integer page, Integer limit, String sort, String order, String question);

    void deleteIssue(int id);

    UpdateIssueVO updateIssue(UpdateIssueBO updateIssueBO);

    CreatIssueVO createIssue(String answer, String question);

    KeywordListVO keywordList(Integer page, Integer limit, String sort, String order, String keyword, String url);

    CreatKeyWordVO createKeyword(Boolean isDefault, Boolean isHot, String keyword, String url);

    void deleteKeyword(int id);

    UpdateKeywordVO updateKeyword(UpdateKeywordVO keyword);

    OrderListVo getOrderList(OrderListParamBo orderListParamBo);

    OrderDetailVo getOrderDetail(Integer id);

    void giveAShip(OrderShipBO shipBO);
}
